package model.bean;

import it.mrcrack.exception.DataFormatException;


public class NomePotenza {
	public String getNome() {
		return nome;
	}
	public void setNome(String nome) throws DataFormatException {
		if(nome==null)
			throw new NullPointerException("Il nome della potenza non puo' essere null");
		if(nome.isEmpty())
			throw new DataFormatException("Il nome della potenza non puo' essere vuoto");
		this.nome = nome;
	}
	public String getUnitaMisura() {
		return unitaMisura;
	}
	public void setUnitaMisura(String unitaMisura) throws DataFormatException {
		if(unitaMisura==null)
			throw new NullPointerException("L'unita' di misura della potenza non puo' essere null");
		if(unitaMisura.isEmpty())
			throw new DataFormatException("L'unita' di misura della potenza non puo' essere vuota");
		this.unitaMisura = unitaMisura;
	}
	public Sensore getSensore1() {
		return sensore1;
	}
	public void setSensore1(Sensore sensore1) throws DataFormatException {
		if(sensore1==null)
			throw new NullPointerException("Il sensore1 della potenza non puo' essere null");
		if(!sensore1.impostato())
			throw new DataFormatException("Il sensore1 della potenza deve essere totalmente settato");
		this.sensore1 = sensore1;
	}
	public Sensore getSensore2() {
		return sensore2;
	}
	public void setSensore2(Sensore sensore2) throws DataFormatException {
		if(sensore2==null)
			throw new NullPointerException("Il sensore2 della potenza non puo' essere null");
		if(!sensore2.impostato())
			throw new DataFormatException("Il sensore2 della potenza deve essere totalmente settato");
		this.sensore2 = sensore2;
	}
	/**
	 * 
	 * @return true se il nomePotenza e' stato totalmente settato, false altrimenti
	 */
	public boolean impostato(){
		boolean flag=true;
		if(nome==null || unitaMisura==null || sensore1==null || sensore2==null)
			flag=false;
		return flag;
	}
	private String nome, unitaMisura;
	private Sensore sensore1, sensore2;
}